#coding=utf-8
__author__ = 'Meteor'
'''
mock serverr:可以开发一个提供接口的模拟服务，对外提供接口的地址和返回值，但是内部不做业务上逻辑处理
mock开发方法：
    1、使用postman来实现
    2、python 的flask框架实现
    
flask：
    安装：
    pip3 install flask
    
    flask：是python提供的一个web开发框架
    django:是python提供的一个重量级的web开发框架
    
路由：
    @app.route('api的URI地址/参数')
    参数：
        为字符串：<参数名>
        数字：<int:参数名>
        浮点型:<float:参数名>
        
请求：
    先导入request
    1、获取请求的方式
    request.method
    2、获取请求的url地址
    request.url
    3、获取请求的uri地址
    request.path
    4、获取请求中params参数
    request.args
    5、获取请求中的表单数据（datta）
    request.form
    
响应：
    通过return返回数据给客户端
    格式：
    return 响应内容,响应状态码,响应头
    
    注意：响应内容不能为空
    
'''
from flask import Flask,request,make_response,jsonify

app = Flask(__name__)
'''
访问login接口
http://ip:port/login
'''

# 配置路由(同时支持get和post请求)
@app.route('/login',methods=['GET','POST'])
def login():
    # 获取当前操作的请求方式
    print(request.method)
    if request.method == 'GET':
        # 获取客户端请求的url地址
        # print(request.url)
        return '当前为登录界面'



    # print(request.cookies)
    # 获取客户端发起的uri地址
    # print(request.path)

    # 获取url地址中传入的参数：params
    # print(request.args)
    # 获取url地址传入的参数的值
    # print(request.args.get('user'))
    # 获取请求中的表单数据
    print(request.form)
    print(request.form.get('user'))



    content = {'code': 2, 'message': '登录成功', 'data': {'user': {'account': '小皮在此', 'passWord': '123', 'name': '小皮（勿删）', 'createDate': '2019-12-30 11: 23: 08', 'status': 0, 'models': [
                {'modelCode': 1, 'modelName': '采购管理'
                },
                {'modelCode': 2, 'modelName': '销售管理'
                },
                {'modelCode': 3, 'modelName': '系统管理'
                },
                {'modelCode': 4, 'modelName': '财务管理'
                },
                {'modelCode': 5, 'modelName': '仓库管理'
                },
                {'modelCode': 6, 'modelName': '业务报表'
                }
            ]
        }, 'token': '20210909141215'
    }
}
    response = make_response(content)
    response.status_code = 201
    response.headers = {'Server':'127.0.0.1'}

    # headers = {'Server':'127.0.0.1'}
    # return response

    return jsonify(content)


# # 通过url地址接收入参(接收一个字符串类型的值)
# @app.route('/delete/<name>')
# def delete_user(name):
#     # 按用户名删除
#     return  '你要删除的用户名为：%s' %name

@app.route('/delete_id/<int:id>')
def delete_id(id):
    return '你要删除的用户的id为：%s' % id


@app.route('/show/user/')
def show_user():
    return '当前系统中的用户列表'

@app.route('/')
def index():
    return '欢迎进入XXX系统'

# if __name__ == '__main__':
#     app.debug=True
#     app.run()